/**
    Name: IntelliJ IDEA darcula theme
    From IntelliJ IDEA by JetBrains
 */

 .cm-s-darcula  { font-family: Consolas, Menlo, Monaco, 'Lucida Console', 'Liberation Mono', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Courier New', monospace, serif;}
 .cm-s-darcula.CodeMirror { background: #2B2B2B; color: #A9B7C6; }

 .cm-s-darcula span.cm-meta { color: #BBB529; }
 .cm-s-darcula span.cm-number { color: #6897BB; }
 .cm-s-darcula span.cm-keyword { color: #CC7832; line-height: 1em; font-weight: bold; }
 .cm-s-darcula span.cm-def { color: #A9B7C6; font-style: italic; }
 .cm-s-darcula span.cm-variable { color: #A9B7C6; }
 .cm-s-darcula span.cm-variable-2 { color: #A9B7C6; }
 .cm-s-darcula span.cm-variable-3 { color: #9876AA; }
 .cm-s-darcula span.cm-type { color: #AABBCC; font-weight: bold; }
 .cm-s-darcula span.cm-property { color: #FFC66D; }
 .cm-s-darcula span.cm-operator { color: #A9B7C6; }
 .cm-s-darcula span.cm-string { color: #6A8759; }
 .cm-s-darcula span.cm-string-2 { color: #6A8759; }
 .cm-s-darcula span.cm-comment { color: #61A151; font-style: italic; }
 .cm-s-darcula span.cm-link { color: #CC7832; }
 .cm-s-darcula span.cm-atom { color: #CC7832; }
 .cm-s-darcula span.cm-error { color: #BC3F3C; }
 .cm-s-darcula span.cm-tag { color: #629755; font-weight: bold; font-style: italic; text-decoration: underline; }
 .cm-s-darcula span.cm-attribute { color: #6897bb; }
 .cm-s-darcula span.cm-qualifier { color: #6A8759; }
 .cm-s-darcula span.cm-bracket { color: #A9B7C6; }
 .cm-s-darcula span.cm-builtin { color: #FF9E59; }
 .cm-s-darcula span.cm-special { color: #FF9E59; }

 .cm-s-darcula .CodeMirror-cursor { border-left: 1px solid #A9B7C6; }
 .cm-s-darcula .CodeMirror-activeline-background { background: #323232; }
 .cm-s-darcula .CodeMirror-gutters { background: #313335; border-right: 1px solid #313335; }
 .cm-s-darcula .CodeMirror-guttermarker { color: #FFEE80; }
 .cm-s-darcula .CodeMirror-guttermarker-subtle { color: #D0D0D0; }
 .cm-s-darcula .CodeMirrir-linenumber { color: #606366; }
 .cm-s-darcula .CodeMirror-matchingbracket { background-color: #3B514D; color: #FFEF28 !important; font-weight: bold; }

 .cm-s-darcula div.CodeMirror-selected { background: #214283; }

 .CodeMirror-hints.darcula {
   font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
   color: #9C9E9E;
   background-color: #3B3E3F !important;
 }

 .CodeMirror-hints.darcula .CodeMirror-hint-active {
   background-color: #494D4E !important;
   color: #9C9E9E !important;
 }

.CodeMirror {
    height: 100%;
    width: 100%;
}

.CodeMirror-empty.CodeMirror-focused {
    outline: none;
}
.CodeMirror pre.CodeMirror-placeholder {
    color: #999;
}

.CodeMirror-lines {
    padding: 0;
}

/* linter 类告警样式 */
.CodeMirror-linewidget {
    padding: 0px;
    .lint-hints {
        position: relative;
        background: rgba(202, 115, 115, 0.1);
        padding: 2px 0 2px 18px;
        font-size: 12px;
        line-height: 1.4;
        color: #ca7373;
        cursor: pointer;

        .lint-icon {
            position: absolute;
            color: #ca7373;
            left: 0;
            top: 2px;
            transition: transform .3s cubic-bezier(.4, 0, .2, 1)
        }

        .checker-detail {
            display: none;
            color: #777;
            font-size: 12px;
            padding: 1em 0;
        }

        &.active {
            .checker-detail {
                display: block;
            }
            .lint-icon {
                transform: rotate(90deg);
            }
        }
    }
}

.lint-hints-wrap {
    /* border-top: 1px solid rgba(202, 115, 115, 0.5); */
    /* border-bottom: 1px solid rgba(202, 115, 115, 0.5); */

    .CodeMirror-line {
        background: rgba(202, 115, 115, 0.2);
        /* border-top: 1px solid rgba(255, 255, 255, 0.1); */
    }

    &.active {
        /* border-top: 1px solid #ca7373!important; */
        /* border-bottom: 1px solid #ca7373!important; */

        .CodeMirror-line {
            background: rgba(202, 115, 115, 0.4);
        }
    }

    &+.lint-hints-wrap {
        border-top: none;
    }
    &.lint-hints-wrap.prev {
        border-bottom: none;
    }
}

/* 重复率代码展示样式 */

.CodeMirror-dupclines {
    margin: 0 1px;
    width: 5px;
}

.dupc-dotline {
    height: 22px!important;
    width: 3px;
    background-color: #63656E;
    cursor: pointer;
    position: absolute;
    top: 0;
    left: 1px;

    &.hover {
        width: 5px;
        left: 0;
    }
    &.selected {
        background-color: #ff7575;
    }
}
#codeSource .background .CodeMirror-line {
    background: rgba(202, 115, 115, 0.2);
}
#codeTarget .background .CodeMirror-line {
    background: rgba(225, 236, 255, 0.1);
}